package org.springblade.modules.booksAnalysis.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.Column;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 每日书籍排行实体类
 *
 * @author BladeX
 * @since 2020-08-28
 */
@Data
@TableName("t_b_daily_book_ranking_report")
@ApiModel(value = "DailyBookRankingReport对象", description = "每日书籍排行")
public class DailyBookRankingReport implements Serializable {

	private static final long serialVersionUID = 1L;

	/**
	 * 主键
	 */
	@ApiModelProperty(value = "主键")
	@Column(columnDefinition = " bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键' ")
	private Long id;
	/**
	 * 日期YYYY-MM-DD
	 */
	@ApiModelProperty(value = "日期YYYY-MM-DD")
	@Column(columnDefinition = " varchar(10) COMMENT '日期YYYY-MM-DD' ")
	private String date;
	/**
	 * 书籍ID
	 */
	@ApiModelProperty(value = "书籍ID")
	@Column(columnDefinition = " bigint(20) NOT NULL COMMENT '书籍ID' ")
	private Long ebookId;
	/**
	 * 书籍名称
	 */
	@ApiModelProperty(value = "书籍名称")
	@Column(columnDefinition = " varchar(50) DEFAULT NULL COMMENT '书籍名称' ")
	private String ebookName;
	/**
	 * 二级分类
	 */
	@ApiModelProperty(value = "二级分类")
	@Column(columnDefinition = " varchar(20) DEFAULT NULL COMMENT '二级分类' ")
	private String twoLevelClassification;
	/**
	 * 三级分类
	 */
	@ApiModelProperty(value = "三级分类")
	@Column(columnDefinition = " varchar(20) DEFAULT NULL COMMENT '三级分类' ")
	private String threeLevelClassification;
	/**
	 * 出版社
	 */
	@ApiModelProperty(value = "出版社")
	@Column(columnDefinition = " varchar(50) DEFAULT NULL COMMENT '出版社' ")
	private String publishing;
	/**
	 * 点击次数
	 */
	@ApiModelProperty(value = "点击次数")
	@Column(columnDefinition = " int(11) DEFAULT NULL COMMENT '点击次数' ")
	private Integer clickNum;
	/**
	 * 点击人数
	 */
	@ApiModelProperty(value = "点击人数")
	@Column(columnDefinition = " int(11) DEFAULT NULL COMMENT '点击人数' ")
	private Integer clickUserNum;
	/**
	 * 引入阅读次数
	 */
	@ApiModelProperty(value = "引入阅读次数")
	@Column(columnDefinition = " int(11) DEFAULT NULL COMMENT '引入阅读次数' ")
	private Integer introductionOfReadNum;
	/**
	 * 引入阅读人数
	 */
	@ApiModelProperty(value = "引入阅读人数")
	@Column(columnDefinition = " int(11) DEFAULT NULL COMMENT '引入阅读人数' ")
	private Integer introductionOfReadUserNum;
	/**
	 * 引入加购数量
	 */
	@ApiModelProperty(value = "引入加购数量")
	@Column(columnDefinition = " int(11) DEFAULT NULL COMMENT '引入加购数量' ")
	private Integer introductionOfPurchaseNum;
	/**
	 * 引入付费订单量
	 */
	@ApiModelProperty(value = "引入付费订单量")
	@Column(columnDefinition = " int(11) DEFAULT NULL COMMENT '引入付费订单量' ")
	private Integer introductionOfPaymentOrderNum;
	/**
	 * 引入付费金额
	 */
	@ApiModelProperty(value = "引入付费金额")
	@Column(columnDefinition = " int(11) DEFAULT NULL COMMENT '引入付费金额' ")
	private Long introductionOfPaymentAmount;
	/**
	 * 引入付费用户数
	 */
	@ApiModelProperty(value = "引入付费用户数")
	@Column(columnDefinition = " int(11) DEFAULT NULL COMMENT '引入付费用户数' ")
	private Integer introductionOfPaymentUserNum;
	/**
	 * 阅读人数
	 */
	@ApiModelProperty(value = "阅读人数")
	@Column(columnDefinition = " DEFAULT NULL COMMENT '阅读人数' ")
	private Integer readUserNum;
	/**
	 * 播放人数
	 */
	@Column(columnDefinition = " DEFAULT NULL COMMENT '播放人数' ")
	private Integer playUserNum;

	/**
	 * 打开次数
	 */
	@ApiModelProperty(value = "打开次数")
	@Column(columnDefinition = " DEFAULT NULL COMMENT '打开次数' ")
	private Integer openNum;
	/**
	 * 阅读时长
	 */
	@ApiModelProperty(value = "阅读时长")
	@Column(columnDefinition = " DEFAULT NULL COMMENT '阅读时长' ")
	private Integer readLength;

	/**
	 * 播放时长
	 */
	@Column(columnDefinition = " DEFAULT NULL COMMENT '播放时长' ")
	private Integer playLength;

	/**
	 * 阅读完成人数
	 */
	@ApiModelProperty(value = "阅读完成人数")
	@Column(columnDefinition = " int(11) DEFAULT NULL COMMENT '阅读完成人数' ")
	private Integer readFinishUserNum;

	/**
	 * 完读率
	 */
	@Column(columnDefinition = " decimal(11,2) DEFAULT NULL COMMENT '完读率' ")
	private BigDecimal readFinishRate;
	/**
	 * 销量
	 */
	@Column(columnDefinition = " int(11) COMMENT '销量' ")
	private Integer saleNum;

	/**
	 * 销售额
	 */
	@Column(columnDefinition = " bigint(20) COMMENT '销售额' ")
	private Long saleAmount;

	/**
	 * 创建时间
	 */
	@Column(columnDefinition = "  datetime COMMENT '创建时间' ")
	private Date created;
}
